home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / ctutord.EXE / FILE2.C < prev    next >
C/C++ Source or Header  |  1991-12-04  |  1KB  |  50 lines

  1.  
  2. #include <stdio.h>
  3. struct employee {
  4.     char fname[20], lname[20];
  5.     long int hired;
  6.     int grade;
  7. };
  8. main()
  9. {
  10.     /* initialize employee data structure */
  11.     static struct employee department[] = {
  12.         {"John", "Doe",100185, 10 },
  13.         {"Jim", "Doe",100188, 8 },
  14.         {"Jane", "Doe",100183, 12 },
  15.         {"", "",0, 0 }
  16.     };
  17.     struct employee input[10];
  18.     int n,i;
  19.     FILE *fp, *fopen();
  20.  
  21.     if( (fp=fopen("bfile","w+b")) == 0 ){
  22.         printf("Could not open the file: %s\n","tempfile2");
  23.         exit(1);
  24.     }
  25.  
  26.     n=fwrite(department, sizeof(struct employee), 3, fp);
  27.     printf("%d objects were written\n",n);
  28.     rewind(fp); /* set file positioning pointer to start of file */
  29.     /* read in "at most" 10 objects of type "struct employee" */
  30.     n=fread(input, sizeof(struct employee), 10, fp);
  31.     printf("%d objects were read from file\n",n);
  32.     /* now print them out */
  33.     for(i=0; i<n; i++){
  34.         printf("Employee %s %s\n",input[i].fname,input[i].lname);
  35.         printf("Hired: %ld, Grade: %d\n",input[i].hired,input[i].grade);
  36.     }
  37.     fclose(fp); /* remember to save file data */
  38.  
  39.     /* other interesting Standard C Library functions */
  40.     if( (rename("bfile","bbfile")) != 0)
  41.         printf("Attempt to rename file failed\n");
  42.  
  43.     if( (fp=fopen("bfile","rb")) == 0 )
  44.         printf("Verified file was removed\n");
  45.     else
  46.         printf("Verified file was NOT removed\n");
  47.  
  48.     system("dir b*");
  49. }
  50.